There is an increasingly important class of applications known as “sense-and-respond applications.” Such applications are referred to as sense-and-respond applications in that these applications respond to situations they sense. The applications span a wide range of domains, including commercial promotion, security, fleet management, and gaming. A particularly important subset of sense-and-respond applications involves the detection of situations that are partly defined by the positions of mobile entities. As technology for precise positioning of mobile entities becomes more affordable and widespread, these applications will become even more valuable.
A problem with current sense-and-respond systems is that a programmer typically has to create an application able to both sense a situation and respond to the sensed situation. This can be a time-consuming process and is limited in that if the underlying technology that provides the sensing operation changes, then the application must be rewritten. Further, any rule that is to be applied to a sensed situation in order to carry out the response is part of the application, and the application generally has to be changed if the rule is changed. Additionally, there are scalability issues, which arise when such applications are deployed to sense situations involving tens of millions of mobile entities and to respond to those situations.
Thus, there is a need to provide improved, scalable techniques for sensing situations involving mobile entities and for responding to the sensed situations.